
package com.microboot.service.user.dao;

import com.microboot.entity.product.dto.ProductReqsVO;
import com.microboot.entity.product.dto.ProductRespVO;
import jakarta.jws.WebMethod;
import jakarta.jws.WebParam;
import jakarta.jws.WebResult;
import jakarta.jws.WebService;

/**
 * IProductService接口定义了产品信息服务的Webservice接口。
 * 该接口主要用于获取产品信息。
 * 注意：该接口使用了WebService注解，使其能够通过Webservice进行调用。
 * targetNamespace属性指定了Webservice的命名空间，通常与包名相关，但不一定完全一致。
 * 补充：targetNamespace属性指定了IProductService接口中请求对象所在package目录为命名空间，通常与包名相关，但不一定完全一致。
 * com.microboot.entity.product.dto ===》 targetNamespace = "http://dto.product.entity.microboot.com" 与包名称相反即可
 */
@WebService(name = "ProductService",targetNamespace = "http://dto.product.entity.microboot.com") //与包名称相反
public interface IProductService {

    /**
     * 获取产品信息。
     * 该方法通过Webservice公开，允许外部系统调用以获取产品信息。
     *
     * @param productReqsVO 产品请求信息对象，包含请求的产品信息参数。
     * @return 返回ProductReqsVO对象，包含请求的产品详细信息。
     */
    @WebMethod
    @WebResult(name = "ProductRespVO")
    ProductRespVO getProductInfo(@WebParam(name = "ProductReqsVO") ProductReqsVO productReqsVO);
}

